Bouclettes: A Fortran Loop Parallelizer
نویسنده
چکیده
High Performance Fortran is a dataparallel language that allows the user to specify the parallelism in his program. It is not always easy to extract the parallelism in a given program. To help the user, an automatic loop parallelizer has been developed : Bouclettes. Bouclettes has been written to validate some scheduling and mapping techniques that are mentioned in this paper. A Fortran 77 loop nest is rewritten into a HPF loop nest with explicit parallel loops (INDEPENDENT loops) and explicit data distribution (DISTRIBUTE and ALIGN directives). The diierent stages of parallelization (analysis, dependence analysis, scheduling , mapping and code generation) and their implementation issues are described here.
منابع مشابه
The Bouclettes Loop Parallelizer Ecole Normale Supérieure De Lyon the Bouclettes Loop Parallelizer
Bouclettes is a source to source loop nest parallelizer It takes as input Fortran uniform perfectly nested loops and gives as output an HPF High Performance Fortran program with data distribution and parallel HPF INDEPENDENT loops This paper presents the tool and the underlying parallelization methodology
متن کاملCode Generation in Bouclettes Ecole Normale Supérieure De Lyon Code Generation in Bouclettes Code Generation in Bouclettes
Bouclettes is a source to source loop nest parallelizer. It takes as input Fortran uniform, perfectly nested loops and gives as output a HPF (High Performance Fortran) program with data distribution and parallel ($HPF! INDEPENDENT) loops. This paper explains how the HPF program is built from some scheduling and allocation functions automatically generated by Bouclettes.
متن کاملCode generation in bouclettes
Bouclettes is a source to source loop nest parallelizer. It takes as an input Fortran uniform, perfectly nested loops and gives as an output an equivalent High Performance Fortran program with data distribution directives and parallel ($HPF! INDEPENDENT) loops. This paper explains how the HPF program is built from a “shifted linear schedule” and a data allocation. We focus on the problems we ha...
متن کاملExperiences with Porting the Parallel Cfd Code N3s to Fortran 90
We first present the difficulties we have overcome using the CF90 parallelizer-compiler to obtain a parallel version of the N3S code which is similar to that obtained using the CF77 parallelizer-compiler. We also discuss about the stability of the results produced after this porting. We finally describe the difficulties encountered in controlling the memory consumption when moving from the Fort...
متن کاملThe KAP Parallelizer for DEC Fortran and DEC C Programs
The KAP preprocessor optimizes DEC Fortran and DEC C programs to achieve their best performance on Digital Alpha systems. One key optimization that KAP performs is the parallelization of programs for Alpha shared memory multiprocessors that use the new capabilities of the DEC OSF/1 version 3.0 operating system with DECthreads. The heart of the optimizer is a sophisticated decision process that ...
متن کامل